
namespace FSM {

    /**
     * 状态
     */
    enum EState {

    }

    enum EEvent {

    }

    type Callback = () => void

    interface ITransition {
        from: EState,
        event: EEvent,
        to: EState,
        cb: Callback
    }

    /**
     * 状态机
     */
    export class StateMachine {

    }

    /**
     * 状态机管理单例
     */
    export class StateMachineMgr {

    }

    /**
     * 装饰器-绑定状态
     */
    export function RegState(target: any) {

        target.prototype.key = ""

        return target
    }
}
